package com.property.demo.service;

import com.property.demo.model.Community;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import java.util.List;
import java.util.Map;

public interface CommunityService {
    
    List<Community> findAll();
    
    Page<Community> findAll(Pageable pageable);
    
    Page<Community> findByFilters(String name, Pageable pageable);
    
    Community findById(Long id);
    
    Community save(Community community);
    
    Community update(Long id, Community communityDetails);
    
    void delete(Long id);
    
    List<Community> findByNameContaining(String name);
    
    Map<String, Object> getStatistics();
} 